home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / TPUG Xtras / Xtras / club1.d64 / fast s_tiny dirl (.txt) < prev    next >
Commodore BASIC  |  2009-02-07  |  4KB  |  106 lines

  1. 0 REM *******************************
  2. 1 REM * TINY DIRECTORY BY R.B.WOLFF *
  3. 2 REM *  PRINTS A TINY 2, 3, OR 5   *
  4. 3 REM *     COLUMN DIRECTORY        *
  5. 4 REM * FX80 PRINTER WITH CARD?/G+  *
  6. 5 REM * 3 & 5 COLUMN AND SUPER SMALL*
  7. 6 REM * OPTIONS BY:FRED  LAYBERGER  *
  8. 7 REM *  OMAHA,NE * NOVEMBER 1984   *
  9. 8 REM * FASTER DIRECTORY READ JAN 85*
  10. 9 REM *  IMPROVED DIR READ MARCH 85 *
  11. 10 REM* LABEL(3 1/2 BY 4 1/2) 12/85 *
  12. 11 REM*******************************
  13. 12 CLR:GOSUB160:GOTO20
  14. 14 REM ...SOUND...
  15. 16 POKE54296,5:POKE54277,2:POKE54278,251:POKE54276,17:POKE54273,80:POKE54272,10
  16. 18 FORI=.TO22:NEXT:FORI=.TO30:POKE54276,16:NEXT:RETURN
  17. 20 DIMN$(145):OPEN15,8,15:ESC$=CHR$(27)
  18. 22 POKE53280,1:POKE53281,15
  19. 24 PRINT"[147]FAST SUPER TINY DIRL[146]"
  20. 25 PRINT"[162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162]"
  21. 26 PRINT"PRINTS A TINY 2,3 OR 5":PRINT"COLUMN DIRECTORY"
  22. 27 PRINT"SPACING ADAPTED FOR"
  23. 28 PRINT"3 1/2 X 4 1/2 INCH LABELS":PRINT"DECEMBER 1985"
  24. 29 PRINT"F1-READ/PRINT DIRECTORY"
  25. 30 PRINT"INSERT DISKETTE FIRST"
  26. 32 PRINT"F3-SET/RESET PRINT OPTIONS"
  27. 34 PRINT"F5-QUIT/EXIT TO BASIC"
  28. 36 GOSUB14:IFB>14THENB=.
  29. 38 POKE646,B:PRINT"SELECT ONE":IFA$="[135]"THENCLOSE15:PRINT"[147][144]":END
  30. 40 GETA$:IFA$<>"[133]"ANDA$<>"[134]"THENB=B+1:PRINT"[145][145][145][145]";:GOTO36
  31. 42 IFA$="[134]"THENGOSUB120:GOTO22
  32. 44 PRINT "[147]WORKING[144]"
  33. 46 POKE850,32:POKE851,228:POKE852,255:POKE952,29
  34. 48 PRINT#15,"I":OPEN1,8,.,"$0":CLOSE1:GOSUB166:OPEN1,8,.,"$0"
  35. 50 SYSDL:N$(.)=MID$(X$,6,22):POKE850,76:POKE851,100:POKE852,3:POKE952,24:CT=1
  36. 52 SYSDL:B$=LEFT$(X$,1):C$=MID$(X$,2,1):T$=STR$(ASC(C$)*256+ASC(B$))
  37. 54 T$=RIGHT$("   "+T$,3):N$(CT)=MID$(X$,2,19)+T$
  38. 56 PRINT"     "N$(CT):IFST=.THENCT=CT+1:GOTO52
  39. 58 B$=RIGHT$(N$(CT),3)+" BLOCKS FREE ":N$(CT)=""
  40. 60 PRINT"[145]        BLOCKS FREE      "
  41. 62 CLOSE1:GOSUB166:GOSUB118
  42. 64 GOSUB140:CT=CT-1:X=INT(CT/VAL(CS$)):P2=2*X:P3=3*X:P4=4*X
  43. 66 IFLEN(STR$(CT/VAL(CS$)))<=LEN(STR$(CT))THEN90
  44. 68 X=X+1:IFCS$="2"THENP2=2*X-1:GOTO90
  45. 70 IFCS$="5"THEN80
  46. 72 REM  ******* 3 COLUMN *********
  47. 74 IFRIGHT$(STR$(CT/3),1)="3"THENP2=X:P3=2*X-1:GOTO90
  48. 76 IFRIGHT$(STR$(CT/3),1)="4"THENP2=X:P3=2*X-1:GOTO90
  49. 78 P2=2*X:P3=3*X-1:GOTO90
  50. 80 REM  ******* 5 COLUMN *********
  51. 82 IFRIGHT$(STR$(CT/5),1)="2"THENP2=2*X-1:P3=3*X-2:P4=4*X-3:GOTO90
  52. 84 IFRIGHT$(STR$(CT/5),1)="4"THENP2=2*X:P3=3*X-1:P4=4*X-2:GOTO90
  53. 86 IFRIGHT$(STR$(CT/5),1)="6"THENP2=2*X:P3=3*X:P4=4*X-1:GOTO90
  54. 88 P2=2*X:P3=3*X:P4=4*X
  55. 90 REM ******* PRINT TO PRINTER *******
  56. 91 SP$="    "
  57. 92 IFPS$<>"R"THENPRINT#4,CHR$(27)"S"CHR$(1);:IFPS$="S"THENSP$="       "
  58. 94 FORP=1TOX
  59. 96 PRINT#4,SP$N$(P)" ";
  60. 98 IFP2=>P+XTHENPRINT#4,N$(P+X)" ";
  61. 100 IFP+P2>CTTHENPRINT#4:GOTO112
  62. 102 IFP3=>P+P2THENPRINT#4,N$(P+P2)" ";
  63. 104 IFP+P3>CTTHENPRINT#4:GOTO112
  64. 106 IFP4=>P+P3THENPRINT#4,N$(P+P3)" ";
  65. 108 IFP+P4>CTTHENPRINT#4:GOTO112
  66. 110 IFP4+X=>P+P4THENPRINT#4,N$(P+P4)
  67. 112 NEXTP
  68. 114 PRINT#4,ESC$CHR$(64):REM RESET PRINTER
  69. 116 CLOSE4:GOTO22
  70. 118 IFXX=1THENRETURN: :REM                       ******* PRINTER SETUP *********
  71. 120 PRINT"[147]PRINT SELECTION??":PRINT"[144]R[146]EGULAR":PRINT"C[146]ONDENSED"
  72. 122 GOSUB14:PRINT"S[146]UPER CONDENSED":POKE198,0
  73. 124 GETPS$:IFPS$<>"R"THENIFPS$<>"C"THENIFPS$<>"S"THEN124
  74. 126 PRINT"HOW MANY COLUMNS  2[146] OR 3[146]?";:IFPS$="S"THENPRINT"[157][157][157][157][157][157], 3[146] OR 5[146]?"
  75. 128 GOSUB14:POKE198,0
  76. 130 GETCS$:IFCS$<>"2"THENIFCS$<>"3"THENIFCS$<>"5"THEN130
  77. 132 GOSUB14:POKE631,34:POKE198,1:PRINT"[147][144]INPUT TODAYS DATE";:INPUTD$
  78. 134 GOSUB14:INPUT"IS THE PRINTER READY[146][144] (Y[146]/N[146])  Y[157][157][157]";A$
  79. 136 IFA$<>"Y"THENPRINT"[145][145]";:GOTO132
  80. 138 XX=1:PRINT"[147]WORKING...":RETURN
  81. 140 CLOSE4:OPEN4,4,4:PRINT#4,ESC$CHR$(64)ESC$"G";
  82. 142 IFPS$="R"ANDCS$="3"THENPRINT#4,ESC$"E";:GOTO146
  83. 144 PRINT#4,CHR$(15)
  84. 146 PRINT#4,"       "N$(.);:IFPS$="S"ANDCS$="2"THENPRINT#4,CHR$(13);
  85. 148 PRINT#4," "B$D$:PRINT#4,ESC$;CHR$(64);:REM RESET
  86. 150 IFPS$<>"S"THENPRINT#4,ESC$"E";:REM EMPHASIZED
  87. 152 PRINT#4,ESC$CHR$(85)CHR$(0);:REM BIDIRECTIONAL ESC U 0
  88. 154 IFPS$="S"THENPRINT#4,CHR$(15);:REM CONDENSED PRINT
  89. 156 IFPS$<>"R"THENPRINT#4,ESC$CHR$(65)CHR$(6);: REM LN FEED TO 6/72"(1/12")ESCA
  90. 158 RETURN
  91. 160 X$="XX":FORI=.TO3:X$=X$+X$:NEXT
  92. 162 DL=830:RESTORE:FORI=DL TO DL+148:READX:POKEI,X:NEXT
  93. 164 RETURN
  94. 166 POKE198,0:INPUT#15,ER,ER$,T,S:IFER=.THENRETURN
  95. 168 PRINT"[147]"ER;ER$;T;S:WAIT198,1:RUN
  96. 170 DATA160,2,177,45,153,249,0,200,192,6,208,246,32,204,255,162
  97. 172 DATA1,32,198,255,76,100,3,32,228,255,32,228,255,32,163,3
  98. 174 DATA32,176,3,76,88,3,32,228,255,240,10,201,42,208,247,32
  99. 176 DATA176,3,76,100,3,32,228,255,32,228,255,32,228,255,32,176
  100. 178 DATA3,32,228,255,32,176,3,32,228,255,201,13,240,48,201,34
  101. 180 DATA208,245,160,0,32,228,255,201,34,234,240,40,32,163,3,32
  102. 182 DATA176,3,76,146,3,201,128,144,2,233,128,201,32,176,2,169
  103. 184 DATA63,96,164,254,145,252,200,132,254,192,24,240,1,96,32,204
  104. 186 DATA255,40,40,96,234,32,228,255,201,0,240,154,32,163,3,32
  105. 188 DATA176,3,76,195,3
  106.